home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1996 February
/
EnigmA AMIGA RUN 04 (1996)(G.R. Edizioni)(IT)[!][issue 1996-02][Skylink CD III].iso
/
docs
/
corsoguide
/
idcmpflags-16.txt
< prev
next >
Wrap
Text File
|
1992-09-03
|
6KB
|
135 lines
IDCMP Flags
Riportiamo i flag indicanti i diversi eventi di input; quasti flag vengono
usati nel campo IDCMPFlags della finestra, nel tag WA_IDCMP nella funzione
OpenWindowTagList e come identificatori del tipo di evento di un messaggio
ricevuto; per specificare più eventi utilizzare l'operatore logico OR (|);
esempio:
ModifyIDCMP(finestra,IDCMP_MOUSEBUTTONS|IDCMP_GADGETUP);
IDCMP_REQVERIFY
avvisa l'applicazione che un requester sta per aprirsi nella finestra, ed
il sistema attende che l'applicazione risponda prima di aprirlo
IDCMP_REQCLEAR
avvisa l'applicazione quando un requester viene rimosso dalla finestra, in
modo che il programma possa rinfrescare correttamente il suo contenuto
IDCMP_REQSET
avvisa l'applicazione che un requester è stato appena aperto nella finestra;
questo evento è diverso da IDCMP_REQVERIFY in quanto avvisa quando il
requester è stato oramai aperto; attenzione a rinfrescare o disegnare nella
finestra solo quando tutti i requester sono stati chiusi (vale a dire per
ogni IDCMP_REQSET è stato spedito un IDCMP_REQCLEAR)
IDCMP_MENUVERIFY
questo evento avvisa l'applicazione che il sistema sta per attivare la barra
menù o i menù; può necessitare essere avvisati se si stanno eseguendo dei
disegni "critici" direttamente su schermo; vale a dire devono essere ultimati
prima di qualunque altro intervento; il sistema attende che l'applicazione
risponda, prima di attivare i menù
IDCMP_SIZEVERIFY
avvisa l'applicazione che l'utente sta per cambiare la dimensione della
finestra (ovviamente la finestra deve avere il gadget di cambiamento
dimensione), permettendo di ultimare operazioni "critiche"; il sistema
attenderà la risposta del messaggio prima di procedere al cambiamento di
grandezza
Attenzione per tutti gli eventi "VERIFY" (IDCMP_MENUVERIFY,
IDCMP_SIZEVERIFY ecc.): rispondere il prima possibile al messaggio in quanto
l'utente viene bloccato ed attende (e il multitasking va a farsi una
passeggiata); non utilizzare MAI funzioni AmigaDOS mentre è attivo un evento
"VERIFY"; dalla V36 del sistema se l'applicazione non risponde per un certo
periodo di tempo specificato dall'utente, l'evento "VERIFY" viene interrotto.
Conviene utilizzare questi eventi con parsimonia, eliminando l'avviso quando
non serve, con ModifyIDCMP
IDCMP_NEWSIZE
avvisa l'applicazione quando la finestra ha subito un cambio di dimensione;
vedere anche IDCMP_CHANGEWINDOW
IDCMP_REFRESHWINDOW
avvisa l'applicazione che la finestra ha bisogno di essere rinfrescata
(quando passa da dietro un gruppo di finestre in avanti o quando viene
ingrandita); necessita quando il rinfresco del contenuto della finestra è
gestito dall'applicazione. Questo evento ha senso solo con finestre con
refresh WFLG_SIMPLE_REFRESH e WFLG_SMART_REFRESH
IDCMP_MOUSEBUTTONS
avvisa l'applicazione che uno dei pulsanti del mouse è stato premuto (a meno
che, questo non significhi qualcosa di particolare come la pressione di un
gadget)
IDCMP_MOUSEMOVE
funziona solamente se è stato impostato il flag WFLG_REPORTMOUSE della
finestra o il flag GACT_FOLLOWMOUSE in uno dei gadgets. Allora ogni volta
che il mouse si mouve, verrà inviato questo messaggio.
IDCMP_GADGETDOWN
avvisa che l'utente ha selezionato un gadget, che tu hai creato con il flag
GACT_IMMEDIATE.
IDCMP_GADGETUP
avvisa che l'utente ha rilasciato un gadget, che tu hai creato con il flag
GACT_RELVERIFY
IDCMP_MENUPICK
l'utente ha probabilmente selezionato un'opzione del menù
IDCMP_CLOSEWINDOW
avvisa che l'utente ha selezionato il gadget di sistema di chiusura della
finestra
IDCMP_RAWKEY
avvisa che l'utente ha premuto un tasto; questo evento riporta il codice
assoluto (RAW) del tasto; il codice del tasto è passato nel campo Code
dell'IntuiMessage
IDCMP_VANILLAKEY
avvisa che l'utente ha premuto un tasto e ritorna il codice di quest'ultimo;
però il codice viene prima trasformato sequendo la keymap in formato ANSI.
Tasti come HELP non possono essere gestiti con IDCMP_VANILLAKEY (usare
IDCMP_RAWKEY). Dalla V36 del sistema se hai impostato sia IDCMP_RAWKEY che
IDCMP_VANILLAKEY il sistema avviserà con un evento IDCMP_RAWKEY solo per quei
tasti speciali; per tutti gli altri tasti invierà IDCMP_VANILLAKEY unendo
così i vantaggi dell'uno e dell'altro
IDCMP_INTUITICKS
viene inviato questo messaggio approssimativamente 10 volte al secondo; può
servire per temporizzazione per alcuni operazioni (come il double-click)
IDCMP_DELTAMOVE
fornisce i valori delta X/Y di movimento del mouse; può servire a
controllare l'accelerazione del mouse; se vengono impostati
contemporaneamente IDCMP_MOUSEMOVE e IDCMP_DELTAMOVE, si otterranno messaggi
IDCMP_MOUSEMOVE con i valori delta x e y nei campi MouseX e MouseY
dell'IntuiMessage
IDCMP_NEWPREFS
avvisa che sono state cambiate le preferenze di sistema
IDCMP_ACTIVEWINDOW e IDCMP_INACTIVEWINDOW
avvisano che la finestra viene attivata o disattivata rispettivamente
IDCMP_DISKINSERTED e IDCMP_DISKREMOVED
avvisano che un disco è stato inserito o rimosso rispettivamente
IDCMP_IDCMPUPDATE
nuovo dalla V36, usato come un canale di comunicazione da gadget custom e
boopsi alla tua pplicazione
IDCMP_CHANGEWINDOW
nuovo dalla V36, avvisa che le dimensioni o la posizione della finestra
vengono cambiate dall'utente o da una funzione intuition
IDCMP_MENUHELP
nuovo dalla V37; se specifichi WA_MenuHelp all'apertura della finestra,
quando l'utente preme il tasto HELP mentre seleziona un menù, viene inviato
questo evento in modo che l'applicazione possa fornire un aiuto all'utente
IDCMP_GADGETHELP
nuovo dalla V39 del sistema. Se attivi il gadget help della tua finestra
usando HelpControl(), Intuition spedirà IDCMP_GADGETHELP quando il mouse
passa sopra determinati gadget della tua finestra